import java.util.Calendar;
import java.util.GregorianCalendar;

/**
 * Klasse zur einfachen Verwaltung von Datumsobjekten.
 * 
 * @author christoph.stueber@mes-alsfeld.de
 * @version Schuljahr 2013/2014
 *          erstellt 14.03.2014
 *          geändert 14.03.2014
 */
public class Date
{
    /**
     * Das Kalenderobjekt,
     */
    GregorianCalendar d;

    /**
     * Konstruktor zum Erzeugen von Objekten der Klasse Datum.
     * Die Datumsobjekte werden standardmäßig mit dem aktuellen Datum erzeugt.
     */
    public Date()
    {
        d = new GregorianCalendar();
    }

    /**
     * int2digit wandelt einen int Wert in einen String mit führender Null.
     * 
     * @param a
     * @return String
     */
    private String int2digit(int a)
    {
        StringBuilder sb = new StringBuilder(String.valueOf(a));
        if (sb.length() < 2)
        {
            sb.insert(0, "0");
        }

        return sb.toString();

    }

    /**
     * getDate liefert die String-Darstellung des Datum-Wertes.
     * 
     * @return String
     */
    public String getDate()
    {
        StringBuilder sb = new StringBuilder();
        sb.append(int2digit(d.get(Calendar.DATE)));
        sb.append(".");
        sb.append(int2digit(d.get(Calendar.MONTH) + 1));
        sb.append(".");
        sb.append(String.valueOf(d.get(Calendar.YEAR)));

        return sb.toString();
    }

    /**
     * getTime liefert die String-Darstellung des Zeit-Wertes.
     * 
     * @return String
     */
    public String getTime()
    {
        StringBuilder sb = new StringBuilder();
        sb.append(int2digit(d.get(Calendar.HOUR_OF_DAY)));
        sb.append(":");
        sb.append(int2digit(d.get(Calendar.MINUTE)));
        return sb.toString();
    }
}
